1. Technical Field
The present invention relates generally to computer systems software backup and, more particularly, to a application-directed method of saving a boot image in a dynamical manner to facilitate a "fast boot" to any predetermined system operating environment.
2. Description of the Related Art
The conventional approach to booting an operating system involves the predefined ordering, loading and initialization of system components, which includes the operating system kernel and its associated subsystems. Because each component must be initialized, boot time is often considerable.
More specifically, the conventional boot sequence involves a repetitive process of loading and initializing system modules. Each module must be read from the system's disk drive and then loaded into memory. After the module is loaded into memory, that module's initialization code must be executed to initialize local variables, memory and associated devices. In many operating systems, this sequence must be done sequentially and in a predefined order for the system to initialize properly.
For example, in computer systems running the IBM.RTM. OS/2.RTM. operating system, the system boot loader is first loaded. In turn, it loads the OS/2 Kernel, which takes control and begins to load the required system dynamic load libraries ("DLLs"). After the system DLLs are loaded, the graphical user interface ("GUI") is initialized. Finally, other user level applications may be started. This entire sequence involves loading modules from disk, initializing memory, swapping and scheduling different processes, and then setting up the system environment so that the user may begin to load its applications.
For many computer system users, however, the conventional boot sequence described above is far too long. In such circumstances, so-called "fast boot" system restoration is often mandated as a system operating constraint due to the "mission critical" nature of the environment in which the system is being used. A typical example might be a medical system running in a hospital emergency room. If that system were to crash due to a power failure, a patient's welfare might well be at stake if the computer system cannot recover in as short a time as possible. Indeed, if the system had to be rebooted using the normal boot sequence, such a process could take up to 5 minutes, which is obviously unacceptable.
There have attempts in the prior art to address this problem. One known approach to "soft booting" an operating system (such as DOS) is to save a compressed image of the operating system in an extended memory area of the computer's physical memory (e.g., RAM) and then boot the computer from that static image. Although this approach decreases boot time, the image is lost once the system is powered down. Moreover, the technique requires that the operating system use a dedicated area in RAM for the boot image.
It is also known to create and store a bootstrap image in non-volatile storage, such as a direct access storage device. In response to a power failure or other system malfunction, the bootstrap image is read from the storage device and executed as a result of execution of the system Initial Program Loadable (IPL) control program. The basic approach is described in U.S. Pat. Nos. 5,519,869, and that patent also teaches a technique for controlling the density with which the image is originally written to the storage device. Another conceptually similar approach is the Rapid Resume.TM. feature presently implemented in certain personal computer systems made and sold by IBM.RTM.. This feature is a hardware and BIOS solution, which allows the state of the computer system to be saved when the user turns off the computer via a power switch. At that time, the operating system and then-executing application programs are saved in a boot image at a fixed location in disk storage. The approach, however, requires that hardware devices in the computer have advanced power management ("APM") capability. Moreover, if the user adds additional memory, the storage disk must be reconfigured, which is undesirable.
Although such disk storage-based "boot image" methods provide certain advantages, there remains a need in the art to provide further enhancements to the known "fast boot" process and to otherwise extend application of the process into other operating system environments.